package com.dawn.module.cms.controller.app.company.vo;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.dawn.framework.excel.core.annotations.DictFormat;
import com.dawn.framework.excel.core.convert.DictConvert;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.time.LocalDate;
import java.time.LocalDateTime;

@Schema(description = "app 接口 - 公司信息 Response VO")
@Data
@ExcelIgnoreUnannotated
public class AppCompanyRespVO {
    @Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "10633")
    @ExcelProperty("ID")
    private Long id;

    @Schema(description = "公司名称", example = "王五")
    @ExcelProperty("公司名称")
    private String name;

    @Schema(description = "公司简称")
    @ExcelProperty("公司简称")
    private String abbr;

    @Schema(description = "logo")
    @ExcelProperty("logo")
    private String logo;

    @Schema(description = "logo_text")
    @ExcelProperty("logo_text")
    private String logoText;

    @Schema(description = "宗旨")
    @ExcelProperty("宗旨")
    private String slogan;

    @Schema(description = "二维码")
    @ExcelProperty("二维码")
    private String qrcode;

    @Schema(description = "联系电话")
    @ExcelProperty("联系电话")
    private String phone;

    @Schema(description = "地址")
    @ExcelProperty("地址")
    private String address;

    @Schema(description = "ICP备案主体号")
    @ExcelProperty("ICP备案主体号")
    private String icpMain;

    @Schema(description = "ICP备案服务号")
    @ExcelProperty("ICP备案服务号")
    private String icpServer;

    @Schema(description = "业务")
    @ExcelProperty("业务")
    private String business;

    @Schema(description = "简介")
    @ExcelProperty("简介")
    private String suggest;

    @Schema(description = "域名")
    @ExcelProperty("域名")
    private String domain;

    @Schema(description = "机构编码")
    @ExcelProperty("机构编码")
    private String organCode;

    @Schema(description = "法人")
    @ExcelProperty("法人")
    private String legalPerson;

    @Schema(description = "等级")
    @ExcelProperty("等级")
    private String level;

    @Schema(description = "性质")
    @ExcelProperty("性质")
    private String nature;

    @Schema(description = "成立日期")
    @ExcelProperty("成立日期")
    private LocalDate foundDate;

    @Schema(description = "邮箱")
    @ExcelProperty("邮箱")
    private String email;

    @Schema(description = "版权")
    @ExcelProperty("版权")
    private String copyright;

    @Schema(description = "内容")
    @ExcelProperty("内容")
    private String content;

    @Schema(description = "最后更新时间", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("最后更新时间")
    private LocalDateTime updateTime;

}